Combining Formal Specifications with Design by Contract

نویسندگان

  • Begoña Moros Valle
  • Joaquín Nicolás Ros
  • Jesús García Molina
  • José Ambrosio Toval Álvarez
چکیده

In this paper, we present an approach to the object-oriented software development which is based on: i) automatic generation of a throwaway prototype from the initial specification in a formal, declarative, object-oriented specification language, ii) validation of user requirements and refinement of the specification by using this prototype, and iii) automatic translation from the validated specification types to programming classes including the semantics of the formal specification by means of assertions. The last step is achieved by using an object-oriented implementation language supporting Eiffel-like assertions and the “Design by Contract” technique; therefore, these classes force the first evolutionary prototype (that will evolve to the final software) to be formally consistent with the validated specification. This approach is supported by a high level CARE (Computer-Aided Requirements Engineering) tool.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

XCD – Simple, Modular, Formal Software Architectures

Connector-Centric Design (XCD) is a new approach for specifying software architectures that focuses on the use of complex connectors. In XCD simple interconnection mechanisms like procedure-calls, event-buses, etc. are abstracted and components take a second place. XCD aids the clear separation in a modular manner of the highlevel functional, interaction, and control system behaviour, thus incr...

متن کامل

Design by contract approach to test generation for EFSMs using GA

Design by contract approach prescribes that developer should define formal and verifiable interface specifications for software components and makes it possible to automate process of software testing. We propose to adapt this approach for Extended Finite State Machines (EFSMs), which are often used in model-based development and for modeling VHDL specifications. This paper proposes an approach...

متن کامل

A Methodology for Writing Class Contracts

One of the principles of Design by Contract is that contracts for software components must be written in a declarative way, using a formal, mathematically founded notation. When we apply the Design by Contract methodology in a naive and straightforward way, we risk ending up with unwanted duplication. In this paper, we describe a methodology for writing class contracts that avoids specification...

متن کامل

Contract Specification of Pipelined Designs: Application to Testbench Automation

In this paper we introduce a novel approach to formal specification of pipelined designs. The approach is based on contract specifications of pipe stages extended by a mechanism of temporal binding. Contract specifications describe the pipeline behavior in the form of preconditions and postconditions of pipe stages, while temporal binding combines specifications of separated stages into a co-op...

متن کامل

Towards Monitoring-Oriented Programming: A Paradigm Combining Specification and Implementation

With the explosion of software size, checking conformance of implementation to specification becomes an increasingly important but also hard problem. Current practice based on ad-hoc testing does not provide correctness guarantees, while highly confident traditional formal methods like model checking and theorem proving are still too expensive to become common practice. In this paper we present...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2000